package com.up.upzl.biz;

import java.util.HashMap;
import java.util.Map;

import org.junit.Before;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;

import com.google.common.base.Strings;
import com.up.upzl.UpzlApplicationTests;
import com.up.upzl.biz.domain.ShopBusinessType;
import com.up.upzl.biz.repository.ShopBusinessTypeRepository;

import lombok.extern.slf4j.Slf4j;

/**
 * District T
 * 
 * @author geeks
 *
 */
@Slf4j
public class ShopBusinessTypeT extends UpzlApplicationTests {

	@Autowired
	private ShopBusinessTypeRepository shopBusinessTypeRepository;

	private Map<String, String> businessTypes = new HashMap<>();

	@Before
	public void initDistrict() {
		businessTypes.put("酒楼餐饮",
				"面包房 火锅店 自助餐厅 小吃快餐店 日本料理店 韩国料理店 西餐厅 烤肉店烧烤/烤串 湘菜馆 江浙菜馆 香锅烤鱼店 粤港菜馆 西北菜馆 云南菜馆 贵州菜馆 海鲜馆 粥铺 新疆菜馆 湖北菜馆 清真菜馆 东北菜馆 家常菜馆 饮料店/水吧 咖啡厅 私房菜馆 徽菜馆 粉面馆 江西菜馆 山西菜馆 藏餐馆 甜品店 米粉/米线/面馆 面包房(堂食) 甜品店（堂食）鲁菜馆 小吃快餐店（窗口） 甜品店（窗口） 面包房（窗口） 快餐/外卖配送 川菜馆 素菜馆 炖菜馆 蒙餐馆 北京菜馆 东南亚菜馆 台湾菜/客家菜 快餐配送 酒吧 其他");
		businessTypes.put("服饰鞋包", "服装店 内衣店 童装店 鞋店箱包店 饰品店 黄金珠宝店 婚纱礼服馆");
		businessTypes.put("休闲娱乐",
				"网吧 足浴/按摩店 桌球城茶馆/茶楼水疗球馆 麻将馆/棋牌室 歌舞厅(ktv) 夜总会 健身房 瑜伽馆 休闲中心 浴池浴场 桌游 溜冰场 电玩城 电影院 游乐场 密室 俱乐部 VR体验馆 DIY手工坊 桌游室 儿童乐园");
		businessTypes.put("美容美发", "美容院 美发店 美甲店 SPA馆 母婴 养生会所 纹身店");
		businessTypes.put("生活服务",
				"干洗店 花店 水族店 彩票店 报刊亭 送水送气店 宠物店 照相馆 婚纱/儿童摄影 打字复印店 广告制作店 婚庆店 房产中介 银行 快递点 旅行社 投资理财保险咨询 家政服务中心 典当行 丧葬用品店 劳务中介法律咨询 票务代售点 裁缝改衣店 皮具护理店");
		businessTypes.put("百货超市",
				"超市 便利店 小卖部 精品店 杂货店 烟酒茶叶店 母婴用品店 玩具店 文具店 书店眼镜店 化妆品店 乐器店 工艺品店 休闲食品店 专柜 床上用品店 水产肉类熟食店 特产类商店 档口/摊位 副食品店 水果店 格子铺 古玩字画 体育用品店");
		businessTypes.put("家居建材", "五金建材店 建材店 家具店 灯饰店 家居饰品店 装饰装修材料店 布艺家纺店 装潢店");
		businessTypes.put("电器通讯", "数码店 电脑店 电器店 维修店 通讯营业厅");
		businessTypes.put("汽修美容", "汽修厂 汽配店 轮胎店 汽车美容店 维修点 汽车4S店 电瓶车店");
		businessTypes.put("医药保健", "医院 诊所 药店 保健品店 成人用品店 体检中心 养老院 月子会所");
		businessTypes.put("教育培训", "学校 幼儿园 培训机构 家教中心 早教中心 婴儿游泳馆");
		businessTypes.put("旅馆宾馆", "旅馆 宾馆 酒店 招待所 公寓房 出租房 度假山庄");
		businessTypes.put("其它业态", "其它");
	}

	/**
	 * 导入业态
	 */
	@Test
	public void importBusinessType() {
		log.info("Mission start ...");

		shopBusinessTypeRepository.findAll().forEach(businessType -> {
			String vs = businessTypes.get(businessType.getName());
			if (!Strings.isNullOrEmpty(vs)) {
				String[] businessTypeArray = vs.split(" ");
				for (String businessTypeTemp : businessTypeArray) {
					ShopBusinessType bt = new ShopBusinessType();
					bt.setName(businessTypeTemp);
					bt.setParentShopBusinessType(businessType);

					shopBusinessTypeRepository.save(bt);
				}
			}
		});

		log.info("Mission complete ...");
	}

}
